package com.txtsqlclient.domain;

import java.sql.Connection;

import com.txtsqlclient.dataaccess.database.connection.ConnectionException;

/**
 * This interface represents a DataSource.
 * 
 * @author spadda
 * 
 */
public abstract class DataSource {

	protected DataSourceType dsType;

	public abstract void writeConnectionDetailsToFile();

	public abstract void readConnectionDetailsFromFile();

	public abstract Connection openConnection() throws ConnectionException;

	public abstract String formatURL(final String urlFormatStr);

	public abstract int hashCode();

	public abstract boolean equals(final Object o);
}
